home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / man / cmds.fmt / makedepend.man < prev    next >
Text File  |  1992-01-29  |  9KB  |  201 lines

  1.  
  2.  
  3.  
  4. MAKEDEPEND                User Commands                MAKEDEPEND
  5.  
  6.  
  7.  
  8. _________________________________________________________________
  9.  
  10. NNAAMMEE
  11.      makedepend - Generate dependency list for make
  12.  
  13. SSYYNNOOPPSSIISS
  14.      mmaakkeeddeeppeenndd [_o_p_t_i_o_n_s] _f_i_l_e _f_i_l_e ...
  15.  
  16. OOPPTTIIOONNSS
  17.      --DD _d_e_f              Define a macro.  This argument  has  the
  18.                          same  meaning as the corresponding argu-
  19.                          ment to cccc.
  20.  
  21.      --ff _m_a_k_e_f_i_l_e         Use _m_a_k_e_f_i_l_e as the makefile to  modify.
  22.                          If  _m_a_k_e_f_i_l_e  is  ``-'', mmaakkeeddeeppeenndd will
  23.                          simply print dependency  information  on
  24.                          standard  output.   _M_a_k_e_f_i_l_e defaults to
  25.                          mmaakkeeffiillee   if   it   exists,   otherwise
  26.                          MMaakkeeffiillee.
  27.  
  28.      --II _i_n_c_l_u_d_e_D_i_r       Search for include files  in  _i_n_c_l_u_d_e_D_i_r
  29.                          before  looking  in  the  default system
  30.                          directories.  If there are many --II argu-
  31.                          ments,  the  directories are searched in
  32.                          the same order as the arguments.
  33.  
  34.      --mm _t_m               Use _t_m as the target  machine  for  gen-
  35.                          erating    dependencies.    The   target
  36.                          machine  determines   where   mmaakkeeddeeppeenndd
  37.                          looks for machine-dependent header files
  38.                          (see below).   If  this  option  is  not
  39.                          specified,  the  target machine defaults
  40.                          to the value of the $$MMAACCHHIINNEE environment
  41.                          variable.
  42.  
  43.      --oo _s_u_f_f_i_x           Use  _s_u_f_f_i_x  as  the  suffix   for   the
  44.                          ``object''  files  listed in the output.
  45.                          If this argument is not  specified,  the
  46.                          suffix defaults to ..oo.
  47.  
  48.      --pp                  Output  the  full  path  name  for  each
  49.                          include  file.   If  this  switch  isn't
  50.                          specified, then only  the  include  file
  51.                          name  given in the ##iinncclluuddee statement is
  52.                          output.
  53.  
  54.      --ss _s_t_r_i_n_g           If this switch is given,  _s_t_r_i_n_g  speci-
  55.                          fies  the comment string that identifies
  56.                          the beginning  of  dependencies  in  the
  57.                          makefile.   _S_t_r_i_n_g  must  start with the
  58.                          comment character ``#''.
  59.  
  60.  
  61.  
  62.  
  63. Sprite v.1.0       Printed:  January 29, 1992                   1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. MAKEDEPEND                User Commands                MAKEDEPEND
  71.  
  72.  
  73.  
  74.      --vv                  Verbose mode.  For each file included by
  75.                          one  of  the _f_i_l_es, output a sequence of
  76.                          comment  lines  that  list   the   other
  77.                          include  files  included by that include
  78.                          file.
  79.  
  80.      --ww _w_i_d_t_h            Try to arrange for output lines  not  to
  81.                          contain   more   than  _w_i_d_t_h  characters
  82.                          total.  If a single  _f_i_l_e  has  multiple
  83.                          dependencies  then  they will be grouped
  84.                          onto a single line in  the  output  file
  85.                          unless  this  grouping  would  cause the
  86.                          output line to exceed  _w_i_d_t_h  characters
  87.                          in length.
  88.  
  89. _________________________________________________________________
  90.  
  91.  
  92. DDEESSCCRRIIPPTTIIOONN
  93.      MMaakkeeddeeppeenndd is a program that generates dependency lines  for
  94.      makefiles.  It reads a collection of C source files given by
  95.      the _f_i_l_e arguments and generates a collection of lines  each
  96.      having the form
  97.  
  98.           ffiillee..oo::   xx..hh   yy..hh   //aa//bb//cc..hh
  99.  
  100.      These dependency lines describe all  of  the  include  files
  101.      used directly or indirectly in compiling each source _f_i_l_e.
  102.  
  103.      MMaakkeeddeeppeenndd normally inserts the dependency  lines  into  the
  104.      file  mmaakkeeffiillee  if it exists, or MMaakkeeffiillee otherwise (see the
  105.      --ff option for other alternatives).  To insert the  dependen-
  106.      cies  in  a makefile, mmaakkeeddeeppeenndd searches the makefile for a
  107.      trigger line.  Usually the trigger line is
  108.  
  109.           ## DDOO NNOOTT DDEELLEETTEE TTHHIISS LLIINNEE ---- mmaakkee ddeeppeenndd ddeeppeennddss oonn iitt..
  110.  
  111.      but a different trigger string may be selected with  the  --ss
  112.      switch.  MMaakkeeddeeppeenndd locates the trigger line, deletes all of
  113.      the information after the trigger line, and replaces it with
  114.      the  dependency  lines.   A  backup  copy  of  the  original
  115.      makefile is saved in _m_a_k_e_f_i_l_e..bbaakk~~, where  _m_a_k_e_f_i_l_e  is  the
  116.      name of the original makefile.
  117.  
  118.      MMaakkeeddeeppeenndd duplicates the actions of cccc in determining which
  119.      include  files  are  required  for  each  _f_i_l_e.  It normally
  120.      checks for include files in the current directory,  then  in
  121.      //sspprriittee//lliibb//iinncclluuddee,   then   in   //sspprriittee//lliibb//iinncclluuddee//_t_m..mmdd
  122.      (where _t_m is the target machine being compiled for;  this is
  123.      either the value of the $$MMAACCHHIINNEE environment variable or the
  124.      value given in the --mm option).  If  --II  options  are  given,
  125.      then those directories are searched before the standard sys-
  126.      tem directories.  MMaakkeeddeeppeenndd processes conditional  compila-
  127.      tion  statements  such  as  ##ddeeffiinnee  and ##iiffddeeff in a fashion
  128.  
  129.  
  130.  
  131. Sprite v.1.0       Printed:  January 29, 1992                   2
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138. MAKEDEPEND                User Commands                MAKEDEPEND
  139.  
  140.  
  141.  
  142.      similar to the C preprocessor in order to consider only  the
  143.      include  files  that  would  be processed by the C compiler.
  144.      You should pass the same --DD options to mmaakkeeddeeppeenndd  that  you
  145.      would  give  to  cccc.   MMaakkeeddeeppeenndd can also deal with ##iiff and  |
  146.      ##eelliiff directive, except that the only allowable  expressions  |
  147.      are  ddeeffiinneedd((_f_o_o))  and  !!ddeeffiinneedd((_f_o_o)).  Any other expression  |
  148.      will evaluate to false.
  149.  
  150.      There are several options that control the formatting of the
  151.      dependency  lines.  Normally, the first field of each output
  152.      line is _x..oo, where _x is one of the _f_i_l_e arguments  with  the
  153.      ..cc or any other suffix stripped off.  However, the --oo option
  154.      may be used to place a suffix other than ..oo  in  the  output
  155.      lines.   The  --pp  option controls how completely the include
  156.      file names are specified in the output.   If  --pp  is  given,
  157.      then  the  complete path name of each header file is output.
  158.      If --pp is not given, then  only  the  name  from  the  actual
  159.      ##iinncclluuddee  statement  is  output (e.g., ssyyss//ffiillee..hh instead of
  160.      //sspprriittee//lliibb//iinncclluuddee//ssyyss//ffiillee..hh).  This default is useful for
  161.      Pmake,  which  manages  its  own  include  file search path.
  162.      Finally, the --ww switch may be used to control the length  of
  163.      the output lines, and the --vv switch causes extra information
  164.      about nested includes to be output in the  form  of  comment
  165.      lines.
  166.  
  167.  
  168. SSEEEE AALLSSOO
  169.      mkmf, pmake
  170.  
  171.  
  172. BBUUGGSS
  173.      Can't handle arbitrary expressions following ##iiff or ##eelliiff.    |
  174.  
  175.      Makedepend's algorithm can cause problems in some cases.  It  |
  176.      only  parses  each include file once and generates a list of  |
  177.      dependencies for that file.  However,  if  defines  are  set  |
  178.      differently, it could be that an include file will depend on  |
  179.      two different sets of files in  two  different  invocations.  |
  180.      In  this case, makedepend will return the wrong dependencies  |
  181.      for the second case.
  182.  
  183.  
  184. KKEEYYWWOORRDDSS
  185.      dependencies, include file, object file
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197. Sprite v.1.0       Printed:  January 29, 1992                   3
  198.  
  199.  
  200.  
  201.